汇编,[2000H],2000H,[AX],AX 有什么区别?请教

来源:百度知道 编辑:UC知道 时间:2024/06/28 09:22:59
ADD AX, BX
BX 寄存器中存放的是 有效地址 还是 直接的操作数,

2000h是立即数,加[]的一般是表内存单元的引用,ax和这个一样。

如果是用masm,对于自定义的标签,加不加[]都被汇编器翻译成对地址的引用,虽然一定程度上简化了代码书写,但增加了迷惑性,比如:

.data
a dw 3

...

mov ax, a ; 这句被解释为mov ax, [a]

所以在引用内存内容时还是加上[]好一些,用nasm就不存在这种问题。

ADD AX, BX
bx中的是数,至于是地址还是操作数,那是根据上下文给出的修饰词,add ax, bx只负责把bx加到ax里去。